package com.wzdigit.wms.basic.client.request.transfer;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.List;

/**
 * 增加装柜单输入
 * 
 * @author yangdongjie
 * @param <T>
 * @param <T>
 * @GetWarehouseListRequest.java
 * @2020年12月31日下午3:40:49
 */
@Data
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonIgnoreProperties(value = { "hibernateLazyInitializer", "handler", "fieldHandler" }, ignoreUnknown = true)
public class AddCtnrLoadingRequest implements Serializable {

	private static final long serialVersionUID = -5812482285373909439L;

	/**
	 * 装柜单ID集合
	 */
	@ApiModelProperty(value = "装柜单ID集合", required = true)
	@NotNull(message = "装柜单ID集合不能为空")
	@NotEmpty(message = "装柜单ID集合不能为空")
	private List<Integer> ctnrLoadingIds;

	/**
     * 柜号
     */
	@ApiModelProperty(value = "柜号", required = true)
	@NotBlank(message = "柜号不能为空")
    private String cntrNo;
    
	/**
     * 柜型
     */
	@ApiModelProperty(value = "柜型", required = true)
	@NotBlank(message = "柜型不能为空")
    private String cntrType;
    
	/**
     * 订舱号
     */
	@ApiModelProperty(value = "订舱号", required = false)
	@NotBlank(message = "订舱号不能为空")
    private String bookingNo;

    /**
     * 封条号
     */
	@ApiModelProperty(value = "封条号", required = false)
	@NotBlank(message = "封条号不能为空")
    private String sealNo;

    /**
     * 车牌号
     */
	@ApiModelProperty(value = "车牌号", required = false)
	@NotBlank(message = "车牌号不能为空")
    private String vehicleNo;
}
